package com.zmn.oms.services.interfaces.conf.attachment;


import com.zmn.oms.model.entity.conf.attachment.ConfOrderAttachment;
import com.zmn.oms.model.entity.conf.attachment.ConfOrderAttachmentQuery;
import com.zmn.oms.model.vo.conf.attachment.ConfOrderAttachmentVO;

import java.util.List;

/**
 * 类描述：
 *
 * @author liuying
 * @date 2021/05/06 16:53
 */
public interface ConfOrderAttachmentService {

    /**
     * 查询配置
     *
     * @param query
     * @return
     */
    List<ConfOrderAttachment> listByQuery(ConfOrderAttachmentQuery query);

    /**
     * 查询照片配置
     *
     * @return
     */
    List<ConfOrderAttachment> listPictureByQuery(ConfOrderAttachmentQuery query);

    /**
     * 根据条件查询配置数据，如果【channelIdList】或【servCategIdList】不为null，
     *  则会使用“模糊查询”去查询【channelIdList】或【servCategIdList】并且会查出【渠道id】或【服务分类id】为空的数据。
     *
     * @param query
     * @return
     */
    List<ConfOrderAttachment> listByQueryAndChannelIdsOrServCategIds(ConfOrderAttachmentQuery query);

    /**
     * 分页查询
     *
     * @return
     */
    List<ConfOrderAttachment> listPageByQuery(ConfOrderAttachmentQuery query);


    /**
     * 分页查询
     *
     * @return
     */
    List<ConfOrderAttachment> listPicturePageByQuery(ConfOrderAttachmentQuery query);

    /**
     * 查询数量
     *
     * @param query
     * @return
     */
    int countByQuery(ConfOrderAttachmentQuery query);

    /**
     * 根据ID 查询
     *
     * @param id
     * @return
     */
    ConfOrderAttachmentVO findConfById(Integer id);

    /**
     * 根据ID 查询
     *
     * @param id
     * @return
     */
    ConfOrderAttachment findById(Integer id);

    /**
     * 修改
     *
     * @param ConfOrderAttachment
     */
    void updateConfById(ConfOrderAttachment ConfOrderAttachment);

    /**
     * 新增
     *
     * @param ConfOrderAttachment
     */
    Integer insertConf(ConfOrderAttachment ConfOrderAttachment);

    /**
     * 删除
     *
     * @param id
     */
    Integer deleteById(Integer id);


}
